<?php
namespace app\admin\controller;

class KfReply extends Common{
    public function _initialize()
    {
        parent::_initialize();
    }

    public function index()
    {
        /**
         * 参数说明
         * post.keyword 可根据该值获取 与title，content匹配的回复信息
         */
        $input = input('post.');
        $input = array_merge(['keyword'=>""],$input);
        $KfReplyModel = new \app\admin\model\KfReply();
        $Kf_list = $KfReplyModel->all($input);
        $this->assign([
            'reply_list' => $Kf_list['data'],
            'reply_page' => $Kf_list['page'],
            'input'    => $input
        ]);
        return $this->fetch();
    }
    public function add()
    {
        return $this->fetch();
    }
    //添加一个客服
    public function insert()
    {
        /**
         * 参数说明
         * title 标题
         * content 回复内容
         */
        $post = ArrRemoveJs(input('post.'));
        //匿名初始化
        $kf = new \app\admin\model\KfReply();
        $result = $kf->addReply($post);

        $this->success($result['msg'],url('index'));
    }

    //ajax删除自动回复
    public function del()
    {
        /**
         * 参数说明
         * param.id
         */
        $input  = !empty(input('param.id')) ? [input('param.id')] : null;
        if(empty($input))
        {
            return ['error'=>1,'msg'=>'没有选中记录被删除'];
        }
        $KfReplyModel = new \app\admin\model\KfReply();
        return $KfReplyModel->del($input);
    }

    //删除多个自动回复
    public function delAll()
    {
        /**
         * 参数说明
         * post.id[]
         */
        $input = input('post.');
        if(!isset($input['id']) || empty($input['id']))
        {
            $this->error("没有选中记录");
        }
        $KfReplyModel = new \app\admin\model\KfReply();
        $result = $KfReplyModel->del($input['id']);
        $this->success($result['msg'],url('index'));
    }

    //编辑一个自动回复
    public function edit()
    {
        /**
         * 参数说明
         * param.id
         */
        $id = input('param.id');
        $KfReplyModel = new \app\admin\model\KfReply();
        $data = $KfReplyModel->info(['id'=>$id]);
        if(!$data) $this->error('不存在该自动回复记录');
        $this->assign([
            'id' =>$id,
            'info'=>$data
        ]);
        return $this->fetch();
    }

    public function update()
    {
        /**
         * 参数说明
         * title 标题
         * content 自动回复内容
         */
        $input = ArrRemoveJs(input('post.'));
        $KfReplyModel = new \app\admin\model\KfReply();
        $result = $KfReplyModel->edit($input);
        if($result['error'] != 0)
        {
            $this->error($result['msg']);
        }
        else
        {
            $this->success($result['msg'],url('index'));
        }
    }

    public function upload_photo()
    {
        // 获取表单上传文件
        $file = request()->file('file');
        $path =  'public' . DS . 'uploads'. DS . "other_photo";
        if(empty($file)) return json_encode(['error'=>1,'msg'=>'没有上传图片'],JSON_UNESCAPED_UNICODE);
        $info = $file->validate(['size'=>2097152,'ext'=>'jpg,png,gif'])->move(ROOT_PATH . $path);
        if($info){
            // 成功上传后 获取上传信息
            // 输出 jpg
            $img_path = str_replace('\\','/',$path.DS.$info->getSaveName());
            return json_encode([
                'error' => 0,
                'msg'   => $this->config('domain')."/".$img_path
            ]);

        }else{
            return json_encode([
                'error' => 1,
                'msg'   => $file->getError()
            ],JSON_UNESCAPED_UNICODE);
        }
    }

}